1. Field of the Invention
The present invention relates to a robot cleaner and, more particularly, to a method for compensating a rotational position error of a robot cleaner, which is capable of minimizing a rotational position error of a robot cleaner.
2. Description of the Background Art
In general, a robot cleaner is operated by the steps of detecting a region for a cleaning operation along a wall surface of a room (e.g., a living room or the inner room) of a house and returning to an original position; performing a cleaning operation along the cleaning path of the detected cleaning region; and moving to a charger and automatically charging a battery of a robot cleaner when the cleaning operation is completed.
Thus, in each step of the cleaning operation, accurate calculation of positions of the robot cleaner (e.g., ‘x’-axis direction, ‘y’-axis direction or rotational direction) is a critical factor in determining a cleaning performance. Especially, a size of a rotational position error of the robot cleaner in the step of performing the cleaning operation in a certain pattern is crucial to the cleaning performance.
There are various methods for determining a position of the robot cleaner.
For example, one of methods for calculating an absolute position of the robot cleaner is using a GPS (Global Positioning System). However, in spite of its advantage of obtaining an absolute position, this method has a problem that if the GPS is used in a limited space such as in a building, the precision of the GPS is degraded. That is, the GPS can not be substantially employed in the building.
Another method is obtaining a rotational speed and a straight-forward speed from an encoder (not shown) installed in the robot cleaner and integrating the obtained rotational speed and the straight-forward speed in order to determine a relative position of the robot cleaner.
However, using of the encoder incurs a low cost in implementing the robot cleaner, but a rotational position error occurs due to a state of a bottom surface, an assembly error of the robot cleaner, a slip, or the like, and in addition, it is difficult to calculate the rotational position error.
A third method is obtaining a rotational position of the robot cleaner by integrating an angular velocity of gyro sensor, For example, the gyro sensor outputs 2.5 volt when the robot cleaner is not rotated. When the robot cleaner is rotated at an angular velocity of 90°/sec clockwise, the gyro sensor outputs 5.0 volt. When the robot cleaner is rotated at an angular velocity of 90°/sec counterclockwise, the gyro sensor outputs 0 volt. If a sensor value of the gyro sensor is 1.25 volt, it means that the robot cleaner is rotated at an angular velocity of 45°/sec counterclockwise.
However, in the present invention, an important fact was noted through various experiments and try-and-error that when a rotational position of the robot cleaner is calculated by using the gyro sensor, an offset value of the gyro sensor changes as time passes, and if the changed offset value is not compensated, the rotational position errors of the robot cleaner are accumulated.
That is, though the gyro sensor for measuring the rotational speed (angular velocity) has such advantages that an error of an encoder does not occur with respect to the state of the bottom surface, an external impact or in case of collision to an object, accumulation of the rotational position errors due to the offset value of the gyro sensor degrades the cleaning performance of the robot cleaner.
Meanwhile, conventional techniques with respect to the robot cleaner is disclosed in U.S. Pat. No. 5,440,216, and the gyro sensor of the robot cleaner is disclosed in the U.S. Pat. No. 5,646,494.